home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Wayzata's Best of Shareware PC/Windows 2
/
Wayzata's Best of Shareware 2.0 (Windows) (Wayzata Technology)(7112)(1994).bin
/
pc
/
dos
/
math
/
fsultra1
/
demo.for
< prev
next >
Wrap
Text File
|
1992-06-18
|
3KB
|
124 lines
C FSU - ULTRA The greatest random number generator that ever was
C or ever will be. Way beyond Super-Duper.
C (Just kidding, but we think its a good one.)
C
C Authors: Arif Zaman (arif@stat.fsu.edu) and
C George Marsaglia (geo@stat.fsu.edu).
C
C Date: 27 May 1992
C
C Version: 1.05
C
C Copyright: To obtain permission to incorporate this program into
C any commercial product, please contact the authors at
C the e-mail address given above or at
C
C Department of Statistics and
C Supercomputer Computations Research Institute
C Florida State University
C Tallahassee, FL 32306.
C
C See Also: README for a brief description
C ULTRA.DOC for a detailed description
C
C-----------------------------------------------------------------------c
c This demo calls the various subroutines of ultra as a test
c
external uni,vni,duni,dvni
external i32bit,i31bit,i16bit,i15bit,i8bit,i7bit,i1bit
real*4 uni, vni
real*8 duni, dvni, d(4)
integer*4 i32bit, i31bit, k(32)
integer*2 i16bit, i15bit
integer*2 i8bit, i7bit, i1bit
print 1
1 format (' A Sample Printout:')
do 106 i=1,10000
j=min(4,i)
106 k(j)=i32bit()
print 116,(k(j),j=1,4)
116 format (' No rinit call: ',4i16)
call rinit(1234567,7654321)
do 6 i=1,10000
j=min(4,i)
6 k(j)=i32bit()
print 16,(k(j),j=1,4)
16 format (' Signed 4 byte: ',4i16)
call rinit(1234567,7654321)
do 7 i=1,10000
j=min(4,i)
7 k(j)=i31bit()
print 17,(k(j),j=1,4)
17 format (' Uns. 4 byte: ',4i16)
call rinit(1234567,7654321)
do 8 i=1,10000
j=min(8,i)
8 k(j)=i16bit()
print 18,(k(j),j=1,8)
18 format (' Signed 2 byte: ',8i8)
call rinit(1234567,7654321)
do 9 i=1,10000
j=min(8,i)
9 k(j)=i15bit()
print 19,(k(j),j=1,8)
19 format (' Uns. 2 byte: ',8i8)
call rinit(1234567,7654321)
do 10 i=1,10000
j=min(16,i)
10 k(j)=i8bit()
print 20,(k(j),j=1,16)
20 format (' Signed byte: ',16i4)
call rinit(1234567,7654321)
do 11 i=1,10000
j=min(16,i)
11 k(j)=i7bit()
print 21,(k(j),j=1,16)
21 format (' Uns. byte: ',16i4)
call rinit(1234567,7654321)
do 22 i=1,10000
j=min(32,i)
22 k(j)=i1bit()
print 23,(k(j),j=1,32)
23 format (' Random bits: ',32i2)
call rinit(1234567,7654321)
do 4 i=1,10000
j=min(4,i)
4 d(j)=vni()
print 14,(d(j),j=1,4)
14 format (' Signed Single: ',4f16.7)
call rinit(1234567,7654321)
do 5 i=1,10000
j=min(4,i)
5 d(j)=uni()
print 15,(d(j),j=1,4)
15 format (' Uns. Single: ',4f16.7)
call rinit(1234567,7654321)
do 2 i=1,10000
j=min(2,i)
2 d(j)=dvni()
print 12,(d(j),j=1,2)
12 format (' Signed Double: ',2f32.15)
call rinit(1234567,7654321)
do 3 i=1,10000
j=min(2,i)
3 d(j)=duni()
print 13,(d(j),j=1,2)
13 format (' Unsigned Dble: ',2f32.15)
end